#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Generic;
using Cephei.QL.Times;
namespace Cephei.QL.Times.Calendars
{
     // <summary> 
	// ! Holidays:
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st</li>
	// <li>Bank Holiday, January 2nd</li>
	// <li>Bank Holiday, January 3rd</li>
	// <li>Coming of Age Day, 2nd Monday in January</li>
	// <li>National Foundation Day, February 11th</li>
	// <li>Vernal Equinox</li>
	// <li>Greenery Day, April 29th</li>
	// <li>Constitution Memorial Day, May 3rd</li>
	// <li>Holiday for a Nation, May 4th</li>
	// <li>Children's Day, May 5th</li>
	// <li>Marine Day, 3rd Monday in July</li>
	// <li>Respect for the Aged Day, 3rd Monday in September</li>
	// <li>Autumnal Equinox</li>
	// <li>Health and Sports Day, 2nd Monday in October</li>
	// <li>National Culture Day, November 3rd</li>
	// <li>Labor Thanksgiving Day, November 23rd</li>
	// <li>Emperor's Birthday, December 23rd</li>
	// <li>Bank Holiday, December 31st</li>
	// <li>a few one-shot holidays</li>
	// </ul> Holidays falling on a Sunday are observed on the Monday following except for the bank holidays associated with the new year.  \ingroup calendars
	// </summary>
    [Guid ("AAB75647-1045-4b76-B815-19361E761C20"),ComVisible(true)]
	public interface IJapan : Cephei.QL.Times.ICalendar
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
    }

    // <summary> 
	// ! Holidays:
	// <ul>
	// <li>Saturdays</li>
	// <li>Sundays</li>
	// <li>New Year's Day, January 1st</li>
	// <li>Bank Holiday, January 2nd</li>
	// <li>Bank Holiday, January 3rd</li>
	// <li>Coming of Age Day, 2nd Monday in January</li>
	// <li>National Foundation Day, February 11th</li>
	// <li>Vernal Equinox</li>
	// <li>Greenery Day, April 29th</li>
	// <li>Constitution Memorial Day, May 3rd</li>
	// <li>Holiday for a Nation, May 4th</li>
	// <li>Children's Day, May 5th</li>
	// <li>Marine Day, 3rd Monday in July</li>
	// <li>Respect for the Aged Day, 3rd Monday in September</li>
	// <li>Autumnal Equinox</li>
	// <li>Health and Sports Day, 2nd Monday in October</li>
	// <li>National Culture Day, November 3rd</li>
	// <li>Labor Thanksgiving Day, November 23rd</li>
	// <li>Emperor's Birthday, December 23rd</li>
	// <li>Bank Holiday, December 31st</li>
	// <li>a few one-shot holidays</li>
	// </ul> Holidays falling on a Sunday are observed on the Monday following except for the bank holidays associated with the new year.  \ingroup calendars Factory
	// </summary>
   	[ComVisible(true)]
    public interface IJapan_Factory // : Collection_Factory<IJapan, ICell<IJapan>>
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
        
	    IJapan Create ();
    }
}

